艾俊川 | 古代算书中的“投”和数学解题时的“设”
《算数书》这个“投”字,既可训“取”,又可训“置”,但“取”和“置”独立使用时是两个相反的动作,并非同义词,只有摆设物品,从一边取来,到另一边放下,“取”和“置”对应着移动中的同一物体,才能表达同一过程。
1986年出土于湖北江陵的张家山汉代竹简,内有一部《算数书》,内容与我国最早的传世数学著作《九章算术》接近,成书年代则早于后者,在数学史研究中地位重要。
《算数书》有《少广》一章,内列一亩之田已知宽度、求其长度的解题方法和算题集。“少广”是古代“九数”之一,著名的数学课题,《九章算术》也专列一章,包含以最小公倍数通分、开平方、开立方等复杂公式和算题。《算数书》中的《少广》没有这么多内容,只是提供一个简便算法,用来解决生活中的土地步量问题。
对《少广》的整理注释,主要有彭浩先生《张家山汉墓〈算数书〉注释》的相关部分(科学出版社,2001年)与纪志刚先生《〈算数书〉“少广”“大广”二问的释读与校勘》(《自然科学史研究》,第24卷第3期,2005年)。现在看来,两个注本都有未愜之处,并且文中有一个难识之字,众说纷纭,影响到对文义的理解,有必要再作讨论。
下面从《张家山汉墓〈算数书〉注释》节录《少广》的术文部分:
少广
救(求)少广之术曰:先直(置)广,即曰:下有若干步,以一为若干,以半为若干,以三分为若干,积分以尽所救(求)分同之,以为法。即耤(藉)直(置)田二百四十步,亦以一为若干,以为积步,除积步,如法得從(纵)一步。不盈步者,以法命其分。
文中有几对通假字。第一个字前后出现两次,彭浩将其隶定为“救”,读为“求”,引来不少商榷意见。下面“直”读为“置”,“耤”读为“藉”,“從”读为“纵”,都是算术用语,在出土文献中常见,没有异议。
对彭浩释为“救”的字,吴朝阳释为“扱”,谭竞男释为“牧”,均取义为“求”,指“求解”“求取答案”。按“求”义在文中扞格难通。在第一处,“少广之术”是用来解题的现成方法,下面运算都据此进行,若此字确为“求取答案”之义,就应当说“以少广之术求之”,而非“求少广之术”,否则就变成对“少广之术”本身的推演了。岳麓书院藏秦简《数》“少广术”的类似起首语句,为“述(术)曰以少广”、“即以少广曰”,所用词皆为“以”,与“求”义无关。该简行文中又说“以少广求之”,可见古人言辞简练而逻辑严密。(见肖灿《岳麓书院藏秦简〈数〉研究》,湖南大学博士论文,2010)在第二处,如果真是“所求分”,而且能相加(“同之”),那是“所求”已有结果,但实际情况是运算刚刚开始,远未有答案。所以这两处都不会是“求”义。
程少轩先生《小议秦汉简中训为“取”的“投”》一文(《中国文字学报》,第七辑,2017),将此字与放马滩秦简《钟律式占》中字形相同而较清晰的“投”字进行综合研究,认为此字也是“投”,在算数书中应训为“取”。
这是个通达的解释。在“取”的“采用”之义上,《少广》两处文字均可讲通,第一处即“取用少广之术”,第二处即“将所取用的算筹相加”,但若使用“求取”之义,依然不通。
既然此字即放马滩秦简中的“投”字,我们可以利用该简中的训诂资料更进一解(下文所引放马滩秦简文均据《秦简牍合集4放马滩秦墓简牍》,武汉大学出版社,2014)。
放马滩秦简中很多占法需要通过计算来进行,程少轩文中举出不少例子,但有一条与我们现在讨论的问题密切相关,他没有提及:
凡阴阳钟,各殳(投)所卜大娄(数)曰置娄(数)者。(《阴阳钟》,第130页)
此句通过“曰”建立起一个等式,“投大数”=“置数”,也就是“投”=“置”。
再看程少轩引用的两段文字:
凡人来问病者,以来时投日、辰、时数并之。(《问病》,第142页)
占病者,以其来问时直日、辰、时,因而三之。(《占病》,第144页)
程少轩认为从“直日辰时”可知占卜是用求卜时刻的天干、地支、时辰对应的具体数值计算,但未揭出这两句也直接表明“投”的词义等同于“直”。他将“直”读为“值”,解为“数值”,则可商榷。此“直”应和《算数书》中的“直”一样,释为“置”,即用算筹摆出数字,给出计算条件。上引文“置”用在“日辰时”前面,所置确是它们的数值,但“置”本身并不是数值。
用算筹摆出数字,给定条件,在《九章算术》中统称为“置”,在出土秦汉文献中多写作“直”,它们是没有争议的一对通假字。
《算数书》这个“投”字,既可训“取”,又可训“置”,但“取”和“置”独立使用时是两个相反的动作,并非同义词,只有摆设物品,从一边取来,到另一边放下,“取”和“置”对应着移动中的同一物体,才能表达同一过程。摆放算筹,这边放下多少枚,等于从那边取来多少枚,所以既可说“取筹”若干,又可说“置筹”若干,如换用一个能概括整个过程而包容“取”“置”二义的词,应该是“设”。
秦汉时“设”和“置”词义极近,毋须详辩;“设”与“取”也词义相近。如《管子》卷十三“心术上”:“感而后应,非所设也;缘理而动,非所取也。”又如《韩非子》卷十九“显学”:“宋荣子之议,设不斗争,取不随仇。”“设”与“取”均相对为言。
对《九章算术》中的“置”,魏晋时人刘辉曾用“设”来注释,其《少广》“以三乘所得数置中行”,刘辉注为“设三廉之定长”。“置”是具体操作,“设”是操作的全程。唐宋以还,数学书中“设”字渐多,如唐李淳风注《九章算术》,所用一些“设”即为“置”义;又如宋杨辉撰《详解九章算法》,将《九章算术·少广》中的“置全步及分母子”直接引述为“设诸分母子”。这种用法一直沿用到今天,现在解数学题也要先“设”条件。
通此一义,“投少广之术”即“设少广之术”;“所投分”即“所设分”。下面以通用字对《算数书·少广》录文,重新标点,对文义略加疏通,其中为厘清逻辑关系,使用了一个括号。
少广
投少广之术。曰先置广。即曰下有若干步,以一为若干,以半为若干,以三分为若干……积分(以尽所投分同之)以为法。即藉置田二百四十步,亦以一为若干,以为积步,除积步,如法得纵一步。不盈步者,以法命其分。
“投少广之术”,设立少广术算式。
“曰”和下文“即曰”、“即”表示算式内容,也提示三个运算步骤。
“先置广”,首先设置“广”即田地的横边。
“下有若干步,以一为若干,以半为若干,以三分为若干,积分(以尽所投分同之)以为法”,算式下方此时摆出“广”的数值“若干步”,步数包含整数和分数。将一步设定为若干分,半步设定为若干分,三分之一步设定为若干分……以此类推。把“分”累积起来(算法是将所有设定的“分”加起来),作为除数(法)。
已知矩形面积和一条边长,求另一条边长,在使用小数的情况下,是简单的除法题。但中国古代没有小数概念,非整数都用分数表示,难做除法,于是发展出 “少广术”专门解决此类问题。其术是把除数中的分数化为整数,以便相除,从现代数学看,是求出最小公倍数,与各分数相乘,直接将所有分母约掉,再将通分后的分子加起来。《九章算术》中设有公式:“置全步及分母子,以最下分母乘诸分子及全步,各以其母除其子,置之于左,命通分者。又以分母遍乘诸分子及已通者,皆通而同之,并之为法。”看上去很是复杂。《算数书》是简单算法,没有给出求公倍数和通分的公式,而是在算题集中给出预先算好的数值,即当“广”分别包含1-9个相加的分数时,对“一步”、“半步”直到“九分之一步”均设定相应的“分”,供解题者使用。所以术文在求“积分”时,不用通分,直接以对应的数值即“所投分”相加即可。
在以前的研究中,对“下有若干步”,纪志刚认为即指“最下分数的分母”,实则不然。“若干”后面带有单位“步”,是步的数量,而非其中一个分数的分母。这就像一群人站队,个子高的站在最后,我们不能将“外面有若干人”说成“外面站着大个子”。再说这一步骤是求积分的,如果只有一个数,就不劳“以尽所投分同之”了。
在古代数学、天文书中,还没有看到“积分”可以解释成“各个分数”的例子。“分”是一个基本数量单位的下一级单位,“积”则是累加,“积分”是“分”的总和。就像纪志刚提出的《九章算术》“少广”术中的“全步积分”:
置所求步数,以全步积分乘之,为实。实如法而一,得从步。
“全步积分”指由“全步”(一整步)转化而来的所有“分”,相当于《算数书》中的“以一为若干”。两个“积分”虽然内涵不完全一致,但性质相同,都是“步”的向下拆分单位“分”的总和,只不过《算数书》中的“积分”除了一整步化成的分,还要加上各分数步化成的分。
纪文又认为 “所求分同之”指“通分后的分子相加”,但术中并未给出通分公式,也未提出通分要求,并不存在这样的运算。
“少广之术”最后一个步骤,都是常规算法:借筹(增加算筹)设置一亩田的步数二百四十步,将与“一步”对应的“若干分”与其相乘,求得240步的“积步”,作为被除数。用积分除积步,每满一个积分,得出纵边(从)一步,不足一步的余数,化成以积分为分母的分数。在这一步骤中,积分与积步形成新分数,因为分母乘过最小公倍数,所以分子也要乘以相同倍数(若干分),才能保证二者相除后得数正确。
除了张家山汉简和放马滩秦简,岳麓书院、北京大学等处所藏出土秦代算书中也有“投”字(岳麓简原释为“救”),若代以“设”字,均文从字顺。
北大藏秦简《算书》“方田”中有“其投所用三章”一句,旧释未能贯通,现在借机会讨论一下。术文说:
欲方田述(术),耤(藉)方十六而有余十六,耤(藉)方十五不足十五,即并赢(盈)、不足以为法;而直(置)十五,亦耤(藉)十五令相乘殹(也),即成步;有(又)耤(藉)卅一分十五,令韦(维)乘上十五,有(又)令十五自乘殹(也),十五成一,从韦(维)乘者而卅一成一,乃得从上,即成为田一亩。其投此用三章。
韩巍先生解释说:“‘投’字作为秦汉《算书》类文献中常用的术语,义为‘求取’、‘求解’。‘其投此用三章’,大概是说求解这种问题要用到‘三章’的方法,究竟是指哪‘三章’,还有待进一步的整理和研究。”(《北大秦简〈算书〉土地面积类算题初识》,《简帛》第八辑,上海古籍出版社,2013年版)
出土算数书中的“投”可读为“设”,传世文献中也有些许“设”“投”似曾混用的痕迹,如《史记》卷六十九:“苏秦既约六国從亲,归赵,赵肃侯封为武安君,乃设從约书于秦。”司马贞索隐:“乃设從约书,案诸本作投。”《汉书》注卷一百上引应劭:“饵为爵禄,君所以制使其臣,亦犹钓鱼之设饵也。”宋祁补注:“注文设一作投。”
这些异文不排除是文本传抄中产生的讹误。但出土算数书中的“投”与“设”,从训诂角度看词义相同,从文字角度看均由“殳”组成,可谓形近,那么是否存在一种可能性,即“投”是“设”的一种早期写法 (放马滩简若干“投”字原写作“殳”,其实也可能是“设”的简写)?献疑于此,愿求教于高明。
相关链接
订阅我们!点击标题右下“文汇学人”
转载本公众号文章请注明出处
投稿邮箱 wenhuixueren@139.com